package com.ishow.bs.utils;

import org.springframework.util.StringUtils;

import com.alibaba.fastjson.JSONObject;

/**
 * 消息对象
 * 
 * @author chichi
 * @version 1.0
 */
public class MessageInfo {

	/**
	 * 获取异常信息
	 * 
	 * @return
	 */
	public static JSONObject getResultMessage(String msgCode) {
		JSONObject result = new JSONObject();
		result.put("msg_code", msgCode);
		result.put("msg_text", msgCode);
		return result;
	}

	/**
	 * 成功返回
	 */
	public static final JSONObject SUCCESS = getResultMessage("0");
	/**
	 * 系统异常返回
	 */
	public static final JSONObject SYSTEM_ERROR = getResultMessage("900000");
	/**
	 * 数据库异常返回
	 */
	public static final JSONObject DATABASE_ERROR = getResultMessage("900001");

	/**
	 * 参数异常返回
	 */
	public static final JSONObject PARAMETER_ERROR(String param, String message) {
		JSONObject result = getResultMessage("900002");
		String msg = "";
		if (StringUtils.isEmpty(param)) {
			msg = "[" + message + "]";
		} else {
			msg = "[" + param + message + "]";
		}
		msg = result.getString("msg_text") + msg;
		result.put("msg_text", msg);
		return result;
	}

	/**
	 * 系统繁忙返回
	 */
	public static final JSONObject SYS_IS_BUSY = getResultMessage("900003");
	/**
	 * 未知错误返回
	 */
	public static final JSONObject UNKNOW_ERROR = getResultMessage("900004");
	/**
	 * 请求超时返回
	 */
	public static final JSONObject REQUEST_TIME_OUT = getResultMessage("900005");
	/**
	 * 权限不足返回
	 */
	public static final JSONObject NO_POWER = getResultMessage("900006");
	/**
	 * 不被许可的IP地址返回
	 */
	public static final JSONObject NO_ALLOWED_IP_ADDRESS = getResultMessage("900007");
	/**
	 * 远端服务器异常返回
	 */
	public static final JSONObject REMOTE_SERVER_ERROR = getResultMessage("900008");

}
